﻿using System;
using System.Collections.Generic;
using System.Text;
using MVCFoto.Model;

namespace MVCFoto.IDAL
{
    public interface IPhoto
    {
        IList<AlbumInfo> GetUserAlbums(int userId, short privacy, int page, int pagesize, out int itemCount);
        int CreateAlbum(AlbumInfo album);
        AlbumInfo GetAlbum(int albumId);
        AlbumInfo GetAlbum(int userId, string title);
        bool UpdateAlbumPhotoCount(int albumId, int n);
        bool UpdateAlbumCover(int albumId, string cover);
        bool UpdateAlbum(AlbumInfo album);
        int AddPhoto(PhotoInfo photo);
        PhotoInfo GetPhoto(int photoId, bool updateViews);
        IList<PhotoInfo> GetAlbumPhotos(int albumId, int page, int pagesize);
        bool UpdatePhoto(PhotoInfo photo);
        bool UpdatePhotoLatLng(int photoId, string lat, string lng);
        IList<PhotoInfo> GetUserNewPhotos(int userId, short privacy);
        bool DeletePhoto(int photoId);
        IList<PhotoInfo> GetPhotosByIds(int userId,string Ids);
        IList<PhotoInfo> GetTagedPhotos(int userId, string tagName,short privacy, int page, int pagesize, out int itemcount);
    
    }
}
